package org.third.integration.suite.idm.hpsso;

public class Types {
	public static enum KeyStoreType {
		JKS, PKCS12
	}

	public enum CipherType {
		symmetricBlockCipher
	}

	public enum EngineNameType {
		AES("AES"), Blowfish("Blowfish"), threeDES("3DES"), DES("DES");
		String engineName;

		String engineName() {
			return engineName;
		}

		EngineNameType(String engineName) {
			this.engineName = engineName;
		}

		public EngineNameType getEngineName(String name) {
			if (AES.engineName().equals(name)) {
				return AES;
			}
			if (Blowfish.engineName().equals(name)) {
				return Blowfish;
			}
			if (threeDES.engineName().equals(name)) {
				return threeDES;
			}
			if (DES.engineName().equals(name)) {
				return DES;
			}
			return null;
		}

	}

	public enum DigestAlgorithmType {
		SHA1, SHA256, MD5

	}

	public enum AlgorithmNameType {
		SHA256withRSA
	}

	public enum PaddingModeType {
		CBC
	}

	public enum EncodingModeType {

		Base64Url, Base64
	}

	public enum DirectKeyEncodingType {
		Base64Url, Base64, Hex
	}

	public enum CheckIntegrityType {
		disabled, enabled
	}

	public enum CryptoSourceType {
		lw, jce, lwJCECompatible
	}
}
